Ellipsoid method
c.f. Center-of-gravity
method
Consider a more slightly general problem. Given convex set
via access to separation oracle
for the set, we want to determine if
is empty or, otherwise, return any point
.
The hyperplane is parameterized by a normal vector
and offset
so
.
#incomplete
Theorem (Khachiyan, 1979)
Assume
.
The ellipsoid method solves any linear program with
-bit
integer valued constraints exactly in
time.
Separation Oracle Example
#incomplete
Basic ellipsoid method. The basic ellipsoid
algorithm is:
- Ellipsoid method
- given an initial ellipsoid
containing a minimizer of
.
- .
- repeat
- Compute a subgradient:
.
- Normalize the subgradient:
.
- Update ellipsoid center:
.
- Update ellipsoid shape:
- .
The ellipsoid method is not a descent method, so we keep track of the
best point found. We define
References:
- Khachiyan, L. G. 1979. "A Polynomial Algorithm in Linear
Programming".Β Doklady Akademii Nauk SSSRΒ 244, 1093-1096
(translated inΒ Soviet Mathematics DokladyΒ 20, 191-194,
1979).
- https://www.nytimes.com/1979/11/07/archives/a-soviet-discovery-rocks-world-of-mathematics-russians-surprise.html
- https://www.chrismusco.com/amlds2023/notes/lecture09.html#Ellipsoid_Method
- https://www.cs.princeton.edu/courses/archive/fall18/cos521/Lectures/lec16.pdf
- https://web.stanford.edu/class/ee364b/lectures/ellipsoid_method_notes.pdf
- https://www.cs.ubc.ca/~nickhar/W13/Lecture4.pdf